perm filename RECON[MSS,LCS] blob sn#240971 filedate 1975-10-16 generic text, type T, neo UTF8
00400	RECON:	0		; CALL RECON(MM)
00500		SETZ 15,	;	S=0
00600		SETZ 14,	;N=0
00700		HRRZI 12,@(16)	; ADDR OF MM(1)
01000		MOVEI 2,1	;DO 601 K=1,L
01500	RC1:	MOVE 3,PX-1(2)	;J=PN(K)
01600		FIXX(3)
02500		MOVEI 4,(3)	;MM(N)=J+3
02600		ADDI 4,3
02700		MOVEM 4,(12)
02800		AOJ 12,		;N=N+1
02900		AOJ 14,
03000	; POS PTR.
03500		MOVE 5,Q(3)	;R=Q(J+1)
04000		IF(R.GT.4)GO TO 602
04500		P=Q(J+3)
05000		IF(ABS(P-S).LE..5)GO TO 602
05500		S=P
06000	1601	NN(N)=-1
06500		GO TO 601
07000	602	IF(R.EQ.17)GO TO 1601
07500		IF(R.EQ.18)GO TO 1601
08000		NN(N)=0
08500		IF(R.GT.7.AND.R.LT.40)GO TO 601
09000	C NEXT POS2 AND 3 OF CERTAIN IPTEMS
09500		N=N+1
10000		MM(N)=J+6
10500		NN(N)=0
11000		IF(R.NE.6)GO TO 601
11500	C NEXT FOR BEAMS
12000		RZ=Q(J)
12500		IF(RZ.LT.8)GO TO 608
13000		IF(Q(J+10).LT.30)GO TO 608
13500		N=N+1
14000		MM(N)=J+8
14500		NN(N)=0
15000	608	IF(RZ.LT.7)GO TO 601
15500		IF(Q(J+7))GO TO 688
16000		IF(Q(J+8).NE.0)GO TO 688
16500		IF(RZ.LT.8)GO TO 601
17000		IF(Q(J+10).EQ.0)GO TO 601
17500	C FOUND A POS. IN P9
18000	688	N=N+1
18500		MM(N)=J+9
19000		NN(N)=0
19500	601	CONTINUE
20000	C NEXT SORTS THE POINTS
20500	6000	J=1
21000	610	IF(Q(MM(J)).LE.Q(MM(J+1)))GO TO 611
21500		K=MM(J)
22000		MM(J)=MM(J+1)
22500		MM(J+1)=K
23000		K=NN(J)
23500		NN(J)=NN(J+1)
24000		NN(J+1)=K
24500		IF(J.EQ.1)GO TO 611
25000		J=J-1
25500		GO TO 610
26000	611	J=J+1
26500		IF(J.LT.N)GO TO 610
27000	C NOW ALL SORTED
27500		S2=Q(MM(1))
28000		P1=S2
28500	C  THE ABOVE 2 CAN GO BELOW 612
29000		J=1
29500	612	IF(NN(J).EQ.0)GO TO 613
30000	6112	M=J+1
30500		S1=S2
31000	616	IF(NN(M))GO TO 614
31500		M=M+1
32000		GO TO 616
32500	C ASSUMES PROPER END OF LIST
33000	614	K=MM(J)
33500		R=Q(K-2)
34000	C THE CODE #
34500		IF(R.NE.1)GO TO 615
35000		P=Q(K+6)
35500		IF(Q(K-3).LT.7)P=1.
36000	C WAS THEPE A RHYTH VALUE
36500		IF(Q(K+5).EQ.1000)P=.05
37000	C  GRACE NOTES
37500		GO TO 617
38000	615	IF(R.NE.2)GO TO 618
38500		P=Q(K+4)
39000		IF(Q(K-3).LT.5)P=1
39500		GO TO 617
40000	618	IF(R.EQ.4)P=2.6
40500		IF(R.EQ.3)P=6.5
41000		IF(R.GE.17)P=4.
41500		GO TO 628
42000	617	IF(P.EQ.0)P=1
42500		P=(P+(.125-P)*.7)*RSPC
43000	628	K=MM(M)
43500		S2=Q(K)
44000		P2=P1+P
44500		Q(K)=P2
45000		IF(M-J.EQ.1)GO TO 6113
45500	C NEXT ADJUSTS STUFF IN BETWEEN
46000		R=P/(S2-S1)
46500		DO 620 K=J+1,M-1
47000		LA=MM(K)
47500	620	Q(LA)=P1+R*(Q(LA)-S1)
48000	6113	P1=P2
48500		J=M
49000		IF(J.LT.N)GO TO 6112
49500	613	J=J+1
50000		IF(J.LT.N)GO TO 612
50500	C  ALL DONE!